<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!-- Copyright 1997 The Open Group, All Rights Reserved -->
<title>mkdir</title>
</head><body bgcolor=white>
<center>
<font size=2>
The Single UNIX &reg; Specification, Version 2<br>
Copyright &copy; 1997 The Open Group

</font></center><hr size=2 noshade>
<h4><a name = "tag_001_014_1422">&nbsp;</a>NAME</h4><blockquote>
mkdir - make directories
</blockquote><h4><a name = "tag_001_014_1423">&nbsp;</a>SYNOPSIS</h4><blockquote>
<pre><code>

mkdir <b>[</b>-p<b>][</b>-m <i>mode</i><b>]</b><i> dir</i>...
</code>
</pre>
</blockquote><h4><a name = "tag_001_014_1424">&nbsp;</a>DESCRIPTION</h4><blockquote>
The
<i>mkdir</i>
utility will create the directories
specified by the operands, in the order specified.
<p>
For each
<i>dir</i>
operand, the
<i>mkdir</i>
utility will perform actions equivalent to the <b>XSH</b> specification
<i><a href="../xsh/mkdir.html">mkdir()</a></i>
function, called with the following arguments:
<ol>
<p>
<li>
The
<i>dir</i>
operand is used as the
<i>path</i>
argument.
<p>
<li>
The value of the bitwise inclusive
OR
of
S_IRWXU,
S_IRWXG
and
S_IRWXO
is used as the
<i>mode</i>
argument.
(If the
<b>-m</b>
option is specified, the
<i>mode</i>
option-argument overrides this default.)
<p>
</ol>
</blockquote><h4><a name = "tag_001_014_1425">&nbsp;</a>OPTIONS</h4><blockquote>
The
<i>mkdir</i>
utility supports the <b>XBD</b> specification, <a href="../xbd/utilconv.html#usg"><b>Utility Syntax Guidelines</b>&nbsp;</a> .
<p>
The following options are supported:
<dl compact>

<dt><b>-m&nbsp;</b><i>mode</i>
<dd>
Set the file permission bits of
the newly-created directory to the specified
<i>mode</i>
value.
The
<i>mode</i>
option-argument will be the same as the
<i>mode</i>
operand defined for the
<i><a href="chmod.html">chmod</a></i>
utility.
In the
<i>symbolic_mode</i>
strings, the
<i>op</i>
characters "+" and "-" will be interpreted relative to
an assumed initial mode of
a=rwx;
"+" will add permissions to the default mode, "-"
will delete permissions from the default mode.

<dt><b>-p</b>
<dd>Create any missing intermediate pathname components.

For each
<i>dir</i>
operand that does not name an existing directory,
effects equivalent to those caused by the following command will occur:
<pre>
<code>
mkdir -p -m $(umask -S),u+wx $(dirname <i>dir</i>) &amp;&amp;
mkdir <b>[</b>-m <i>mode</i><b>]</b> <i>dir</i>
</code>
</pre>
where the
<b>[-m</b>&nbsp;<i>mode</i><b>]</b>
option represents that option supplied to the original invocation of
<i>mkdir</i>,
if any.

Each
<i>dir</i>
operand that names an existing directory
will be ignored without error.

</dl>
</blockquote><h4><a name = "tag_001_014_1426">&nbsp;</a>OPERANDS</h4><blockquote>
The following operand is supported:
<dl compact>

<dt><i>dir</i><dd>A pathname of a directory to be created.

</dl>
</blockquote><h4><a name = "tag_001_014_1427">&nbsp;</a>STDIN</h4><blockquote>
Not used.
</blockquote><h4><a name = "tag_001_014_1428">&nbsp;</a>INPUT FILES</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_1429">&nbsp;</a>ENVIRONMENT VARIABLES</h4><blockquote>
The following environment variables affect the execution of
<i>mkdir</i>:
<dl compact>

<dt><i>LANG</i><dd>Provide a default value for the internationalisation variables
that are unset or null.
If
<i>LANG</i>
is unset or null, the corresponding value from the
implementation-dependent default locale will be used.
If any of the internationalisation variables contains an invalid setting, the
utility will behave as if none of the variables had been defined.

<dt><i>LC_ALL</i><dd>
If set to a non-empty string value,
override the values of all the other internationalisation variables.

<dt><i>LC_CTYPE</i><dd>
Determine the
locale for the interpretation of sequences of bytes of text data as
characters (for example, single- as opposed to multi-byte characters
in arguments).

<dt><i>LC_MESSAGES</i><dd>
Determine the locale that should be used to affect
the format and contents of diagnostic
messages written to standard error.

<dt><i>NLSPATH</i><dd>
Determine the location of message catalogues
for the processing of
<i>LC_MESSAGES .
</i>
</dl>
</blockquote><h4><a name = "tag_001_014_1430">&nbsp;</a>ASYNCHRONOUS EVENTS</h4><blockquote>
Default.
</blockquote><h4><a name = "tag_001_014_1431">&nbsp;</a>STDOUT</h4><blockquote>
Not used.
</blockquote><h4><a name = "tag_001_014_1432">&nbsp;</a>STDERR</h4><blockquote>
Used only for diagnostic messages.
</blockquote><h4><a name = "tag_001_014_1433">&nbsp;</a>OUTPUT FILES</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_1434">&nbsp;</a>EXTENDED DESCRIPTION</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_1435">&nbsp;</a>EXIT STATUS</h4><blockquote>
The following exit values are returned:
<dl compact>

<dt>0<dd>All the specified directories
were created successfully or the
<b>-p</b>
option was specified and all the specified directories now exist.

<dt>&gt;0<dd>An error occurred.

</dl>
</blockquote><h4><a name = "tag_001_014_1436">&nbsp;</a>CONSEQUENCES OF ERRORS</h4><blockquote>
Default.
</blockquote><h4><a name = "tag_001_014_1437">&nbsp;</a>APPLICATION USAGE</h4><blockquote>
The default file mode for directories is
a=rwx
(777 on most systems) with selected permissions removed in accordance with the
file mode creation mask.
For intermediate pathname components created by
<i>mkdir</i>,
the mode is the default modified by
u+wx
so that the subdirectories can always be created regardless of the
file mode creation mask;
if different ultimate permissions are desired for the intermediate
directories, they can be changed afterwards with
<i><a href="chmod.html">chmod</a></i>.
<p>
Note that some of the requested
directories may have been created even if an error occurs.
</blockquote><h4><a name = "tag_001_014_1438">&nbsp;</a>EXAMPLES</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_1439">&nbsp;</a>FUTURE DIRECTIONS</h4><blockquote>
The IEEE PASC 1003.2 Interpretations Committee has forwarded concerns about
parts of this interface definition to the IEEE PASC Shell and Utilities Working Group
which is identifying the corrections.
A future revision of this specification will align with
IEEE Std. 1003.2b when finalised.
</blockquote><h4><a name = "tag_001_014_1440">&nbsp;</a>SEE ALSO</h4><blockquote>
<i><a href="rm.html">rm</a></i>,
<i><a href="rmdir.html">rmdir</a></i>,
<i><a href="umask.html">umask</a></i>,
the <b>XSH</b> specification description of
<i><a href="../xsh/mkdir.html">mkdir()</a></i>.
</blockquote><hr size=2 noshade>
<center><font size=2>
UNIX &reg; is a registered Trademark of The Open Group.<br>
Copyright &copy; 1997 The Open Group
<br> [ <a href="../index.html">Main Index</a> | <a href="../xshix.html">XSH</a> | <a href="../xcuix.html">XCU</a> | <a href="../xbdix.html">XBD</a> | <a href="../cursesix.html">XCURSES</a> | <a href="../xnsix.html">XNS</a> ]

</font></center><hr size=2 noshade>
</body></html>
